﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;

/// <summary>
/// Summary description for ValidateForm
/// </summary>
namespace thaihua.model
{
    public class ValidateForm : List<ValidateItem>
    {

        public ValidateForm()
        {
            //
            // TODO: Add constructor logic here
            //
        }


        public string GetErrorMessage()
        {
            string msg = "";

            if(base.Count==0)
            {
                return "";
            }
            
            foreach(ValidateItem item in this)
            {
                if (item.Controls.GetType() == typeof(DropDownList)) 
                {
                    if(((DropDownList)item.Controls).SelectedIndex==0)
                    {
                        msg += " "+item.Msg;
                    }
                }
                else if (item.Controls.GetType() == typeof(RadComboBox))
                {
                    if (((RadComboBox)item.Controls).CheckBoxes && ((RadComboBox)item.Controls).Items.Count == 0)
                    {
                        msg += " " + item.Msg;
                    }
                    else if (((RadComboBox)item.Controls).SelectedIndex == 0)
                    {
                        msg += " " + item.Msg;
                    }
                }
                else if (item.Controls.GetType() == typeof(RadTextBox))
                {
                    if (((RadTextBox)item.Controls).Text == "")
                    {
                        msg += " " + item.Msg;
                    }
                }
                else if (item.Controls.GetType() == typeof(RadMaskedTextBox))
                {
                    if (((RadMaskedTextBox)item.Controls).Text == "")
                    {
                        msg += " " + item.Msg;
                    }
                }
                else if (item.Controls.GetType() == typeof(RadNumericTextBox))
                {
                    if (((RadNumericTextBox)item.Controls).Text == "")
                    {
                        msg += " " + item.Msg;
                    }
                }
                else if (item.Controls.GetType() == typeof(RadNumericTextBox))
                {
                    if (((RadNumericTextBox)item.Controls).Text == "")
                    {
                        msg += " " + item.Msg;
                    }
                }
                else if (item.Controls.GetType() == typeof(RadDatePicker))
                {
                    if (((RadDatePicker)item.Controls).SelectedDate == null)
                    {
                        msg += " " + item.Msg;
                    }
                }
                else if (item.Controls.GetType() == typeof(TextBox))
                {
                    if (((TextBox)item.Controls).Text == "")
                    {
                        msg += " " + item.Msg;
                    }
                }
            }

            return msg;
        }
    }
    public class ValidateItem
    {
        public Control Controls
        {
            get;
            set;
        }

        public string Msg
        {
            get;
            set;
        }

        public ValidateItem()
        {
            //
            // TODO: Add constructor logic here
            //
        }

        public ValidateItem(Control controls, string msg) 
        {
            this.Controls = controls;
            this.Msg = msg;
        }
    }
}